A data report includes an organized collection of data. Such a report may be compiled by querying a database for data, which may be imported into a spreadsheet. The spreadsheet may be used to assemble the data into visual aides such as tables, charts, and graphs. The data may be limited to a desired time period such as a week, a month, or a year. The report may be updated at desired intervals by resubmitting the query to the database and importing the newly retrieved data into the spreadsheet.
The compilation of such reports is often labor-intensive and expensive. One reason for the high expense of report compilation is the cost of writing queries. Writing queries is expensive because it requires a proficiency in a query language such as, for example, Structured Query language (SQL). Multiple complex queries may often be required to generate a single report. Thus, to compile a large number of reports, a large number of programmers proficient in a query language must be acquired and retained.
Due to the expense of writing queries, a set of queries necessary to compile a report may be saved. Saving queries enables a report to be updated at desired intervals without having to rewrite the queries. However, even if a report is updated using a set of saved queries, the retrieved data still must be repetitively manipulated upon its receipt. For example, if a report is generated using a spreadsheet, then the data must be manually imported into the spreadsheet every time the report is updated. The manual importation of the retrieved data into the spreadsheet is time-consuming and expensive. Specifically, columns of the spreadsheet must be adjusted to fit the retrieved data.
Another reason for the high cost of report compilation is that the processors used to submit queries and to manipulate data are expensive to operate. Adding to the expense of processor operation is that multiple authors may request redundant reports. The compilation of such redundant reports results in the incurrence of processor expenses to submit redundant sets of queries and to manipulate redundant data.
Thus, there is a need in the art for systems and methods that enable users without query-writing proficiency to request certain predefined reports. There is further a need for such systems and methods to automatically import data into a format that is suitable for such a report, and to provide such reports to multiple users based on only a single retrieval of the data required to build the report.